const http = require('../../../http/app.js')
// pages/home/index/index.js
// 定义初始化下拉列表全部设置为隐藏
function initSubMenuDisplay() {
  return ['hiddenSelect', 'hiddenSelect', 'hiddenSelect', 'hiddenSelect'];
};
//定义初始化menu样式 主菜单样式
function menuCss() {
  return ['ordinary', 'ordinary', 'ordinary', 'ordinary'];
};
//定义初始化menu右侧箭头旋转样式
function rotateRight() {
  return [true, true, true, true];
};
//定义初始化背景遮罩
var showMask = false;
//定义初始化菜单选中的高亮样式存储
var initSubMenuHighLight = [
  ['', '', '', '', ''],
  ['', '', '', '', ''],
  ['', '', '', '', ''],
  ['', '', '', '', ''],
  ['', '', '', '', '']
];
//定义初始化数据，保存选择面板选中的数据
var selectList = ["区域", "价格", "面积", "户型"];

Page({
  /**
   * 页面的初始数据
   */
  data: {
    selectList: selectList,
    subMenuDisplay: initSubMenuDisplay(),//下拉列表样式
    subMenuHighLight: initSubMenuHighLight,//菜单高亮样式
    showMask: showMask,//遮罩
    menuCss: menuCss(),//主菜单样式
    rotateRight: rotateRight(),//主菜单右侧箭头旋转样式
    selectData: [//下拉列表的数据
      {
        name: '区域',
        selectInfo: ['不限', '市中区', '高新区', '历下区', '历城区', '长清区', '天桥区', '槐荫区', '章丘区', '济阳区', '莱芜区', '钢城区'],
        id: 0
      },
      {
        name: '价格',
        selectInfo: ['不限', '1万一下', '1-1.5万', '1.5-2万', '2-3万', '3万以上'],
        id: 1
      },
      {
        name: '面积',
        selectInfo: ['不限', '50m²一下', '50m²-70m²', '70m²-90m²', '90m²-110m²', '110m²以上'],
        id: 2
      },
      {
        name: '户型',
        selectInfo: ['不限', '一室', '俩室', '三室', '四室', '五室', '六室以上'],
        id: 3
      }
    ],
    informationList: [],
    imgUrl: 'https://www.sdhjfu.com/hftool/public/admin/',
    page: 1, //分页标识，第几次下
    noMore: false,
    region: '',
    price: '',
    area: '',
    apartment: ''
  },
  selectTap(e) {  // 点击菜单显示下拉框
    var index = parseInt(e.currentTarget.dataset.index); //得到当前点击的下标
    var newSubMenuDisplay = initSubMenuDisplay();// 初始化下拉列表样式数组
    var newMenuCss = menuCss();   //初始化主菜单样式数组
    var newRotateRight = rotateRight();   //初始化图片旋转样式数组
    if (this.data.subMenuDisplay[index] == 'hiddenSelect') { //如果点击的菜单是未选中菜单
      newSubMenuDisplay[index] = 'showSelect'; //设置对应下拉面板为显示样式
      newMenuCss[index] = 'selection';//设置对应菜单为选中样式
      showMask = true;//显示遮罩
      newRotateRight[index] = false; //设置对应的右侧箭头旋
    } else {//如果选中的菜单是当前选中的，修改样式
      newSubMenuDisplay[index] = 'hiddenSelect';//设置下拉面板隐藏
      newMenuCss[index] = 'ordinary'; //设置当前菜单显示为正常
      showMask = false;//隐藏遮罩
      newRotateRight[index] = true; //初始化旋转样式
    }
    this.setData({
      subMenuDisplay: newSubMenuDisplay,
      menuCss: newMenuCss,
      showMask: showMask,
      rotateRight: newRotateRight,
    })
  },
  optionTap(e) {  // 点击下拉列表
  console.log(e)
    const that = this;
    // 清空所有主菜单样式效果
    this.setData({
      subMenuDisplay: initSubMenuDisplay(),
      menuCss: menuCss(),
      showMask: false,
      rotateRight: rotateRight(),
    });
    // 处理二级菜单，首先获取当前显示的二级菜单标识
    var indexArray = e.currentTarget.dataset.index.split('-'); // 把标识分割成数组['0', '']
    // 如果点中的是一级菜单，则先清空状态，即非高亮模式，然后再高亮点中的二级菜单；
    // 如果不是当前菜单，而不理会。经过这样处理就能保留其他菜单的高亮状态
    for (var i = 0; i < initSubMenuHighLight.length; i++) {
      if (indexArray[0] == i) {
        for (var j = 0; j < initSubMenuHighLight[i].length; j++) {
          initSubMenuHighLight[i][j] = '';
        }
      }
    }
    // 与一级菜单不同，这里不需要判断当前状态，只需要点击就给class赋予highlight即可
    initSubMenuHighLight[indexArray[0]][indexArray[1]] = 'selection';
    // 动态改变菜单名字
    
    
      // 点击其它选项则替换菜单文字
    selectList[indexArray[0]] = this.data.selectData[indexArray[0]].selectInfo[indexArray[1]];
    const result = that.data.selectData[indexArray[0]].selectInfo[indexArray[1]]
    console.log(result)
      // 如果点击不限 则显示原菜单文字
    if (result == '不限') { // 
      console.log(1)
      var ind = indexArray[0]
      if (ind == 0) {
        selectList[ind] == '区域'
        that.setData({
          region: selectList[indexArray[0]],
          selectList: '区域'
        })
      } else if (ind == 1) {
        selectList[ind] == '价格'
        that.setData({
          price: selectList[indexArray[0]],
          selectList: '价格'
        })
      } else if (ind == 2) {
        selectList[ind] == '户型'
        that.setData({
          area: selectList[indexArray[0]],
          selectList: '户型'
        })
      } else if (ind == 3) {
        selectList[ind] == '筛选'
        that.setData({
          apartment: selectList[indexArray[0]],
          selectList: '筛选'
        })
      }
    } else {
      console.log(2)
      var ind = indexArray[0]
      if (ind == 0) {
        that.setData({
          region: selectList[indexArray[0]]
        })
      } else if (ind == 1) {
        that.setData({
          price: selectList[indexArray[0]]
        })
      } else if (ind == 2) {
        that.setData({
          area: selectList[indexArray[0]]
        })
      } else if (ind == 3) {
        that.setData({
          apartment: selectList[indexArray[0]]
        })
      }
    }
    that.setData({
      subMenuHighLight: initSubMenuHighLight,
      selectList: selectList
    })
    // 传数值给后台
    const infoList = {
      region: that.data.region,
      price: that.data.price,
      area: that.data.area,
      apartment: that.data.apartment
    }
    wx.request({
      url: http.houselist,
      method: 'GET', //请求方式
      data: infoList,
      header: {
        'content-type': 'application/json'
      },
      success: function (res) {
        console.log(res)
        const info = res.data.housere.data
        that.setData({
          informationList: info
        })
      }
    })
  },
  contBut () { // 点击空白处关闭下拉列表
    this.setData({ // 全部初始化
      subMenuDisplay: initSubMenuDisplay(),
      menuCss: menuCss(),
      showMask: false,
      rotateRight: rotateRight(),
    });
  },
  searchClick() { // 点击跳转搜搜页面
    // wx.navigateTo({
    //   url: '../components/search/search'
    // })
  },
  // 点击跳转到贷款计算器
  calculator () {
    wx.navigateTo({
      url: '../components/mortgage/calculator/calculator'
    })
  },
  // 点击跳转到房产政策解读
  policy() {
    wx.navigateTo({
      url: '../components/policy/policy'
    })
  },
   // 点击跳转到房产估价
  evaluation() {
    wx.navigateTo({
      url: '../components/evaluations/evaluations'
    })
  }, 
   // 点击跳转到购房资质
  qualifications () {
    wx.navigateTo({
      url: '../components/qualifications/qualifications'
    })
  },
  infoBut (e) { // 点击跳转详情页
    const ind = e.currentTarget.dataset.id;
    // console.log(ind)
    wx.navigateTo({
      url: '../components/content/content?ind=' + ind,
    })
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var that = this;
    that.getFloorInfo(that.data.page);   
    wx.showLoading({
      title: '数据加载中...',
      make: true
    })
  },
  
  /**
  * 页面上拉触底事件的处理函数
  */
  onReachBottom: function () {
    var that = this;
    var page = that.data.page
    page++;
    that.setData({
      page: page
    })
    that.getFloorInfo(that.data.page);
    wx.showLoading({
      title: '加载中...',
      make: true
    })
  },
  getFloorInfo(page) { // 获取数据
    var that = this;
    wx.request({
      url: http.houselist,
      method: 'POST', //请求方式
      data: {
        page: page
      },
      header: {
        'content-type': 'application/x-www-form-urlencoded'
      },
      success: function (res) {
        // console.log(res)
        const floorList = that.data.informationList.concat(res.data.housere.data) 
        if (res.data.housere.data == '') {
          that.setData({
            noMore: true
          })
        } else {
          that.setData({
            informationList: floorList,
          });
        }
        wx.hideLoading();
      }
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
    
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    
  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
    
  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
    
  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
    
  },

 
  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
    
  }
})
